<ui:composition template="/WEB-INF/templates/layout.xhtml"
                xmlns="http://www.w3.org/1999/xhtml"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:p="http://primefaces.org/ui">
    <ui:define name="content">
        <h:form id="formfacturas">
            <p:growl autoUpdate="true"/>
            <p:panel header="Facturas">
                <h:panelGrid columns="4" id="idfacturapanel">
                    <p:outputLabel value="Fecha" for="facturafecha"/>
                    <p:calendar size="35" value="#{facturaController.factura.fecha}" readonlyInput="true" mode="popup" navigator="true" showButtonPanel="true" showOn="button" id="facturafecha" required="true" requiredMessage='El campo "Fecha" es requerido'/>
                    <p:outputLabel value="Concepto" for="facturaconcepto"/>
                    <p:inputTextarea value="#{facturaController.factura.concepto}" maxlength="500" autoResize="false" style="width: 213px" required="true"   id="facturaconcepto" requiredMessage='El campo "Concepto" es requierido' />
                    <h:outputLabel value="Vehiculo" />
                    <p:selectOneMenu value="#{facturaController.factura.vehiculo}" style="width: 213px">
                        <f:converter binding="#{vehiculoConverter}"/>
                        <f:selectItems value="#{facturaController.listaVehiculo}" var="vehiculo" itemLabel="#{vehiculo.matricula}" itemValue="#{vehiculo}"/>
                    </p:selectOneMenu>
                    <p:outputLabel  value="Kilomentro" for="facturakilometro"/>
                    <p:inputMask maxlength="5" mask="9?999999999999999" placeHolder="" size="35" value="#{facturaController.factura.km}" id="facturakilometro" required="true" requiredMessage='El campo "Km" es requerido'/>
                    <p:outputLabel value="Grupo" for="facturagrupo" />
                    <p:selectOneMenu id="facturagrupo" style="width: 213px" value="#{facturaController.factura.grupo}">
                        <f:converter binding="#{grupoConverter}"/>
                        <f:selectItems value="#{facturaController.listaGrupo}" var="grupo" itemLabel="#{grupo.nombre}" itemValue="#{grupo}"/>
                    </p:selectOneMenu>
                    <p:outputLabel value="Proveedor" for="facturaproveedor" />
                    <p:selectOneMenu id="facturaproveedor" style="width: 213px" value="#{facturaController.factura.proveedor}">
                        <f:converter binding="#{proveedorConverter}"/>
                        <f:selectItems value="#{facturaController.listaProveedor}" var="proveedor" itemLabel="#{proveedor.nombres}" itemValue="#{proveedor}"/>
                    </p:selectOneMenu>
                    <p:outputLabel  value="Total" for="facturatotal"/>
                    <p:inputMask maxlength="5" mask="9?999999999999999"  placeHolder="" size="35" value="#{facturaController.factura.total}" id="facturatotal" required="true" requiredMessage='El campo "Total" es requerido'/>
                    <p:commandButton update="@form" value="Guardar" actionListener="#{facturaController.save()}"/>
                    <p:commandButton value="Cancelar" process="@this" actionListener="#{facturaController.init()}" update="idfacturapanel"/>
                </h:panelGrid>
            </p:panel>
            <p:panel  header="Lista de Facturas">
                <h:panelGrid columns="7">
                    <h:inputText id="idbuscarfact" value="#{facturaController.valorBusqueda}"/>
                    <p:watermark for="idbuscarfact" value="Digite Matricula" /> 
                    <p:calendar value="#{facturaController.fechaI}"  id="fechadesde" />
                    <p:watermark for="fechadesde" value="Fecha Desde" /> 
                    <p:calendar value="#{facturaController.fechaF}"  id="fechahasta" />
                    <p:watermark for="fechahasta" value="Fecha Hasta" /> 
                    <p:commandButton process="fechadesde fechahasta idbuscarfact @this" value="Buscar" update="idtablefacturas" action="#{facturaController.search()}"/>
                </h:panelGrid>
                <p:dataTable id="idtablefacturas" paginator="true" rows="5" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" rowsPerPageTemplate="5,10,15" value="#{facturaController.listaFactura}" var="varfactura">
                    <p:column headerText="Fecha">
                        #{facturaController.formatFecha(varfactura.fecha)}
                    </p:column>
                    <p:column headerText="Concepto">
                        #{varfactura.concepto}
                    </p:column>
                    <p:column headerText="Vehiculo">
                        #{varfactura.vehiculo.matricula}
                    </p:column>
                    <p:column headerText="Km">
                        #{varfactura.km}
                    </p:column>
                    <p:column headerText="Proveedor">
                        #{varfactura.proveedor.nombres}
                    </p:column>
                    <p:column headerText="Total">
                        #{varfactura.total}
                    </p:column>
                </p:dataTable>
            </p:panel>
        </h:form>
    </ui:define>

</ui:composition>